package com.softserveinc.interactive_board.domain;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;


@Entity
@Table(name = PresentationStatus.TABLE_NAME)
public class PresentationStatus {
	
	
	public static final String TABLE_NAME = "presentation_status";
	public static final String ID_COLUMN_NAME = "presentation_status_id";
	public static final String STATUS_COLUMN_NAME = "status";

	public static final int COLUMNS_MAX_LENGTH = 30;

	public static final int ID_IN_CREATING = 0;
	public static final int ID_WAIT_4_COND = 1;
	public static final int ID_ACTIVE = 2;
	public static final int ID_CONDUCTED = 3;

	public static final String STATUS_IN_CREATING = "in_creating";
	public static final String STATUS_WAIT_4_COND = "waiting_for_conducting";
	public static final String STATUS_ACTIVE = "active";
	public static final String STATUS_CONDUCTED = "conducted";
	
	public static final int ID_MIN_VALUE = 0;
	public static final int ID_MAX_VALUE = 3;

	
	@Id
	@Column(name = PresentationStatus.ID_COLUMN_NAME)
	private Integer id;

	@Column(name = PresentationStatus.STATUS_COLUMN_NAME, length = PresentationStatus.COLUMNS_MAX_LENGTH)
	public String status;

	public PresentationStatus(Integer id, String status) {
		this.id = new Integer(id);
		this.status = status;
	}
	
	public PresentationStatus(Integer id) {
		this(id, "status");
	}

	public PresentationStatus() {
		this(PresentationStatus.ID_IN_CREATING, PresentationStatus.STATUS_IN_CREATING);
	}
	
	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}

}
